export interface ResponseData {
  code: number
  message: string
  ok: boolean
}

/**
 * 一个账号的数据ts类型
 */
export interface User {
  id?: number
  createTime?: string
  updateTime?: string
  username?: string
  password?: string
  name?: string
  phone?: string
  roleName?: string
}

/**
 * 用户账号数组
 */
export type UserList = User[]

/**
 * 获取账号信息接口返回数据的ts类型
 */
export interface UserResponseData extends ResponseData {
  data: {
    userList: UserList
    total: number
    size: number
    current: number
    pages: number
  }
}

/**
 * 用户所拥有角色的ts数据类型
 */
export interface Role {
  id: number
  createTime: string
  updateTime: string
  roleName: string
  remark: null
}

/**
 * 获取用户角色的接口返回的ts类型
 */
export interface AllRoleResponseData extends ResponseData {
  data: {
    assignRoles: Role[]
    allRolesList: Role[]
  }
}

/**
 * 分配职位接口携带参数的ts类型
 */
export interface RoleData {
  roleIdList: number[]
  userId: number
}
